/**
 * @ClassName Demo03
 * @Description 同样的道理，当一个 short 类型与 1 相加，我们知道会类型提升，但是想给结果赋值给short类型变量，就需要强制转换
 * @Author Li
 * @Date 2022/7/31 8:57
 * @ModifyDate 2022/7/31 8:57
 * @Version 1.0
 */
public class Demo03 {
    public static void main(String[] args) {
        // short类型变量，内存占2个
        short s = 1;
        /*
        出现编译失败
        s和1做运算的时候，1是int类型，s会被提升为int类型
        s+1后的结果是int类型，将结果再赋值给short类型时会发生错误
        short内存占2个字节，int类型占4个字节
        必须将int强制转换成short才能完成赋值
        */
        //short result = s + 1;// 报错：从int转换到short可能会有损失
        short result = (short) (s + 1); // 编译成功
        System.out.println(result);
    }
}
